package com.ruoyi.stuinfo.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 惩戒查询对象 student_punishments
 * 
 * @author zc
 * @date 2025-05-16
 */
public class StudentPunishments extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 惩戒记录ID */
    private Long punishmentId;

    /** 学生学号 */
    @Excel(name = "学生学号")
    private String studentId;

    /** 学生姓名 */
    @Excel(name = "学生姓名")
    private String studentName;

    /** 处罚名称 */
    @Excel(name = "处罚名称")
    private String punishmentName;

    /** 处罚级别 */
    @Excel(name = "处罚级别")
    private String punishmentLevel;

    /** 处罚日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "处罚日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date punishmentDate;

    /** 处罚原因 */
    @Excel(name = "处罚原因")
    private String punishmentReason;

    /** 处罚状态 */
    @Excel(name = "处罚状态")
    private String punishmentStatus;

    /** 解除日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "解除日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date 解除日期;

    public void setPunishmentId(Long punishmentId) 
    {
        this.punishmentId = punishmentId;
    }

    public Long getPunishmentId() 
    {
        return punishmentId;
    }

    public void setStudentId(String studentId) 
    {
        this.studentId = studentId;
    }

    public String getStudentId() 
    {
        return studentId;
    }

    public void setStudentName(String studentName) 
    {
        this.studentName = studentName;
    }

    public String getStudentName() 
    {
        return studentName;
    }

    public void setPunishmentName(String punishmentName) 
    {
        this.punishmentName = punishmentName;
    }

    public String getPunishmentName() 
    {
        return punishmentName;
    }

    public void setPunishmentLevel(String punishmentLevel) 
    {
        this.punishmentLevel = punishmentLevel;
    }

    public String getPunishmentLevel() 
    {
        return punishmentLevel;
    }

    public void setPunishmentDate(Date punishmentDate) 
    {
        this.punishmentDate = punishmentDate;
    }

    public Date getPunishmentDate() 
    {
        return punishmentDate;
    }

    public void setPunishmentReason(String punishmentReason) 
    {
        this.punishmentReason = punishmentReason;
    }

    public String getPunishmentReason() 
    {
        return punishmentReason;
    }

    public void setPunishmentStatus(String punishmentStatus) 
    {
        this.punishmentStatus = punishmentStatus;
    }

    public String getPunishmentStatus() 
    {
        return punishmentStatus;
    }

    public void set解除日期(Date 解除日期) 
    {
        this.解除日期 = 解除日期;
    }

    public Date get解除日期() 
    {
        return 解除日期;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("punishmentId", getPunishmentId())
            .append("studentId", getStudentId())
            .append("studentName", getStudentName())
            .append("punishmentName", getPunishmentName())
            .append("punishmentLevel", getPunishmentLevel())
            .append("punishmentDate", getPunishmentDate())
            .append("punishmentReason", getPunishmentReason())
            .append("punishmentStatus", getPunishmentStatus())
            .append("解除日期", get解除日期())
            .toString();
    }
}
